package com.lxw.station.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import lombok.Data;
import lombok.experimental.Accessors;

@Data
@Accessors(chain = true)
@TableName("git_project")
public class GitProject {

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 搜索关键字
     */
    @TableField("key_word")
    private String keyWord;

    /**
     * 资源类型:1 gitee 2 github
     */
    @TableField("project_type")
    private Integer projectType;

    /**
     * 项目id
     */
    @TableField("project_id")
    private String projectId;

    /**
     * 项目名称
     */
    @TableField("project_name")
    private String projectName;

    /**
     * 资源标题 一般为用户/项目名
     */
    @TableField("project_title")
    private String projectTitle;

    /**
     * 资源描述
     */
    @TableField("project_description")
    private String projectDescription;

    /**
     * 资源下载地址
     */
    @TableField("project_url")
    private String projectUrl;

    /**
     * 语言
     */
    @TableField("project_langs")
    private String projectLangs;

    /**
     * star数
     */
    @TableField("project_star")
    private String projectStar;

    /**
     * 状态:待下载 已下载 已打包 已上传
     */
    @TableField("project_status")
    private String projectStatus;

    /**
     * zip包名
     */
    @TableField("zip_name")
    private String zipName;

    /**
     * zip描述
     */
    @TableField("zip_description")
    private String zipDescription;

    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField("create_time")
    private Date createTime;

    /**
     * 是否删除0 正常 1是删除
     */
    @TableLogic(value = "0",delval = "1")
    @TableField("is_deleted")
    private Integer deleted;

    /**
     * 备注
     */
    @TableField("notes")
    private String notes;

}
